This invention relates to cryptography and more particularly, to cryptographic web services in which cryptographic functions are provided remotely over a network.
Cryptographic services are used in a variety of contexts, including database management, electronic commerce, and communications. Typical cryptographic services include encryption and decryption.
In some situations, it may be desirable to deploy a cryptographic service remotely. Remotely implemented cryptographic services may be shared among multiple computer programs and users.
With conventional remote programming arrangements, custom software is written on both local and remote computers. The remote software in this type of situation is written to perform a particular set of operations for the local software and does not have a generalized application program interface (API) that would allow the remote software to be invoked by other local software. When there are numerous different local computing environments to support, it can be difficult or impossible to implement the required local software efficiently. For example, the local software may not compile properly on certain platforms. Operating system and programming language incompatibilities may also cause problems. Moreover, maintaining a system with appropriate software updates can be challenging when supporting multiple platforms. These issues can significantly limit the deployment potential for conventional cryptographic services.
It would therefore be desirable to be able to provide cryptographic services remotely.